home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / Interfaces&Libraries / Universal / Interfaces / ComponentIncludes / Movies.k.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-08-17  |  18.4 KB  |  419 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        Movies.k.h
  3.  
  4.      Contains:    QuickTime Interfaces.
  5.  
  6.      Version:    Technology:    QuickTime 3.0
  7.                  Release:    Universal Interfaces 3.2
  8.  
  9.      Copyright:    © 1990-1998 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:        For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __MOVIES_K__
  18. #define __MOVIES_K__
  19.  
  20. #include <Movies.h>
  21.  
  22. /*
  23.     Example usage:
  24.  
  25.         #define VIDEOMEDIA_BASENAME()    Fred
  26.         #define VIDEOMEDIA_GLOBALS()    FredGlobalsHandle
  27.         #include <Movies.k.h>
  28.  
  29.     To specify that your component implementation does not use globals, do not #define VIDEOMEDIA_GLOBALS
  30. */
  31. #ifdef VIDEOMEDIA_BASENAME
  32.     #ifndef VIDEOMEDIA_GLOBALS
  33.         #define VIDEOMEDIA_GLOBALS() 
  34.         #define ADD_VIDEOMEDIA_COMMA 
  35.     #else
  36.         #define ADD_VIDEOMEDIA_COMMA ,
  37.     #endif
  38.     #define VIDEOMEDIA_GLUE(a,b) a##b
  39.     #define VIDEOMEDIA_STRCAT(a,b) VIDEOMEDIA_GLUE(a,b)
  40.     #define ADD_VIDEOMEDIA_BASENAME(name) VIDEOMEDIA_STRCAT(VIDEOMEDIA_BASENAME(),name)
  41.  
  42.     EXTERN_API( ComponentResult  ) ADD_VIDEOMEDIA_BASENAME(ResetStatistics) (VIDEOMEDIA_GLOBALS());
  43.  
  44.     EXTERN_API( ComponentResult  ) ADD_VIDEOMEDIA_BASENAME(GetStatistics) (VIDEOMEDIA_GLOBALS());
  45.  
  46.     EXTERN_API( ComponentResult  ) ADD_VIDEOMEDIA_BASENAME(GetStallCount) (VIDEOMEDIA_GLOBALS() ADD_VIDEOMEDIA_COMMA unsigned long * stalls);
  47.  
  48.  
  49.     /* MixedMode ProcInfo constants for component calls */
  50.     enum {
  51.         uppVideoMediaResetStatisticsProcInfo = 0x000000F0,
  52.         uppVideoMediaGetStatisticsProcInfo = 0x000000F0,
  53.         uppVideoMediaGetStallCountProcInfo = 0x000003F0
  54.     };
  55.  
  56. #endif    /* VIDEOMEDIA_BASENAME */
  57.  
  58. /*
  59.     Example usage:
  60.  
  61.         #define TEXTMEDIA_BASENAME()    Fred
  62.         #define TEXTMEDIA_GLOBALS()    FredGlobalsHandle
  63.         #include <Movies.k.h>
  64.  
  65.     To specify that your component implementation does not use globals, do not #define TEXTMEDIA_GLOBALS
  66. */
  67. #ifdef TEXTMEDIA_BASENAME
  68.     #ifndef TEXTMEDIA_GLOBALS
  69.         #define TEXTMEDIA_GLOBALS() 
  70.         #define ADD_TEXTMEDIA_COMMA 
  71.     #else
  72.         #define ADD_TEXTMEDIA_COMMA ,
  73.     #endif
  74.     #define TEXTMEDIA_GLUE(a,b) a##b
  75.     #define TEXTMEDIA_STRCAT(a,b) TEXTMEDIA_GLUE(a,b)
  76.     #define ADD_TEXTMEDIA_BASENAME(name) TEXTMEDIA_STRCAT(TEXTMEDIA_BASENAME(),name)
  77.  
  78.     EXTERN_API( ComponentResult  ) ADD_TEXTMEDIA_BASENAME(SetTextProc) (TEXTMEDIA_GLOBALS() ADD_TEXTMEDIA_COMMA TextMediaUPP  TextProc, long  refcon);
  79.  
  80.     EXTERN_API( ComponentResult  ) ADD_TEXTMEDIA_BASENAME(AddTextSample) (TEXTMEDIA_GLOBALS() ADD_TEXTMEDIA_COMMA Ptr  text, unsigned long  size, short  fontNumber, short  fontSize, Style  textFace, RGBColor * textColor, RGBColor * backColor, short  textJustification, Rect * textBox, long  displayFlags, TimeValue  scrollDelay, short  hiliteStart, short  hiliteEnd, RGBColor * rgbHiliteColor, TimeValue  duration, TimeValue * sampleTime);
  81.  
  82.     EXTERN_API( ComponentResult  ) ADD_TEXTMEDIA_BASENAME(AddTESample) (TEXTMEDIA_GLOBALS() ADD_TEXTMEDIA_COMMA TEHandle  hTE, RGBColor * backColor, short  textJustification, Rect * textBox, long  displayFlags, TimeValue  scrollDelay, short  hiliteStart, short  hiliteEnd, RGBColor * rgbHiliteColor, TimeValue  duration, TimeValue * sampleTime);
  83.  
  84.     EXTERN_API( ComponentResult  ) ADD_TEXTMEDIA_BASENAME(AddHiliteSample) (TEXTMEDIA_GLOBALS() ADD_TEXTMEDIA_COMMA short  hiliteStart, short  hiliteEnd, RGBColor * rgbHiliteColor, TimeValue  duration, TimeValue * sampleTime);
  85.  
  86.     EXTERN_API( ComponentResult  ) ADD_TEXTMEDIA_BASENAME(FindNextText) (TEXTMEDIA_GLOBALS() ADD_TEXTMEDIA_COMMA Ptr  text, long  size, short  findFlags, TimeValue  startTime, TimeValue * foundTime, TimeValue * foundDuration, long * offset);
  87.  
  88.     EXTERN_API( ComponentResult  ) ADD_TEXTMEDIA_BASENAME(HiliteTextSample) (TEXTMEDIA_GLOBALS() ADD_TEXTMEDIA_COMMA TimeValue  sampleTime, short  hiliteStart, short  hiliteEnd, RGBColor * rgbHiliteColor);
  89.  
  90.     EXTERN_API( ComponentResult  ) ADD_TEXTMEDIA_BASENAME(SetTextSampleData) (TEXTMEDIA_GLOBALS() ADD_TEXTMEDIA_COMMA void * data, OSType  dataType);
  91.  
  92.  
  93.     /* MixedMode ProcInfo constants for component calls */
  94.     enum {
  95.         uppTextMediaSetTextProcProcInfo = 0x00000FF0,
  96.         uppTextMediaAddTESampleProcInfo = 0x3FAFEFF0,
  97.         uppTextMediaAddHiliteSampleProcInfo = 0x0003FAF0,
  98.         uppTextMediaFindNextTextProcInfo = 0x003FEFF0,
  99.         uppTextMediaHiliteTextSampleProcInfo = 0x0000EBF0,
  100.         uppTextMediaSetTextSampleDataProcInfo = 0x00000FF0
  101.     };
  102.  
  103. #endif    /* TEXTMEDIA_BASENAME */
  104.  
  105. #ifdef TEXTMEDIA_BASENAME
  106. enum {
  107.     uppTextMediaAddTextSampleProcInfo = SPECIAL_CASE_PROCINFO(specialTextMediaAddTextSample)
  108. };
  109. #endif    /* TEXTMEDIA_BASENAME */
  110. /*
  111.     Example usage:
  112.  
  113.         #define SPRITEMEDIA_BASENAME()    Fred
  114.         #define SPRITEMEDIA_GLOBALS()    FredGlobalsHandle
  115.         #include <Movies.k.h>
  116.  
  117.     To specify that your component implementation does not use globals, do not #define SPRITEMEDIA_GLOBALS
  118. */
  119. #ifdef SPRITEMEDIA_BASENAME
  120.     #ifndef SPRITEMEDIA_GLOBALS
  121.         #define SPRITEMEDIA_GLOBALS() 
  122.         #define ADD_SPRITEMEDIA_COMMA 
  123.     #else
  124.         #define ADD_SPRITEMEDIA_COMMA ,
  125.     #endif
  126.     #define SPRITEMEDIA_GLUE(a,b) a##b
  127.     #define SPRITEMEDIA_STRCAT(a,b) SPRITEMEDIA_GLUE(a,b)
  128.     #define ADD_SPRITEMEDIA_BASENAME(name) SPRITEMEDIA_STRCAT(SPRITEMEDIA_BASENAME(),name)
  129.  
  130.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(SetProperty) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short  spriteIndex, long  propertyType, void * propertyValue);
  131.  
  132.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetProperty) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short  spriteIndex, long  propertyType, void * propertyValue);
  133.  
  134.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(HitTestSprites) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA long  flags, Point  loc, short * spriteHitIndex);
  135.  
  136.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(CountSprites) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short * numSprites);
  137.  
  138.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(CountImages) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short * numImages);
  139.  
  140.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetIndImageDescription) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short  imageIndex, ImageDescriptionHandle  imageDescription);
  141.  
  142.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetDisplayedSampleNumber) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA long * sampleNum);
  143.  
  144.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetSpriteName) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTAtomID  spriteID, Str255  spriteName);
  145.  
  146.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetImageName) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short  imageIndex, Str255  imageName);
  147.  
  148.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(SetSpriteProperty) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTAtomID  spriteID, long  propertyType, void * propertyValue);
  149.  
  150.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetSpriteProperty) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTAtomID  spriteID, long  propertyType, void * propertyValue);
  151.  
  152.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(HitTestAllSprites) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA long  flags, Point  loc, QTAtomID * spriteHitID);
  153.  
  154.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(HitTestOneSprite) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTAtomID  spriteID, long  flags, Point  loc, Boolean * wasHit);
  155.  
  156.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(SpriteIndexToID) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short  spriteIndex, QTAtomID * spriteID);
  157.  
  158.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(SpriteIDToIndex) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTAtomID  spriteID, short * spriteIndex);
  159.  
  160.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetSpriteActionsForQTEvent) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTEventRecordPtr  event, QTAtomID  spriteID, QTAtomContainer * container, QTAtom * atom);
  161.  
  162.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(SetActionVariable) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTAtomID  variableID, const float * value);
  163.  
  164.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetActionVariable) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA QTAtomID  variableID, float * value);
  165.  
  166.     EXTERN_API( ComponentResult  ) ADD_SPRITEMEDIA_BASENAME(GetIndImageProperty) (SPRITEMEDIA_GLOBALS() ADD_SPRITEMEDIA_COMMA short  imageIndex, long  imagePropertyType, void * imagePropertyValue);
  167.  
  168.  
  169.     /* MixedMode ProcInfo constants for component calls */
  170.     enum {
  171.         uppSpriteMediaSetPropertyProcInfo = 0x00003EF0,
  172.         uppSpriteMediaGetPropertyProcInfo = 0x00003EF0,
  173.         uppSpriteMediaHitTestSpritesProcInfo = 0x00003FF0,
  174.         uppSpriteMediaCountSpritesProcInfo = 0x000003F0,
  175.         uppSpriteMediaCountImagesProcInfo = 0x000003F0,
  176.         uppSpriteMediaGetIndImageDescriptionProcInfo = 0x00000EF0,
  177.         uppSpriteMediaGetDisplayedSampleNumberProcInfo = 0x000003F0,
  178.         uppSpriteMediaGetSpriteNameProcInfo = 0x00000FF0,
  179.         uppSpriteMediaGetImageNameProcInfo = 0x00000EF0,
  180.         uppSpriteMediaSetSpritePropertyProcInfo = 0x00003FF0,
  181.         uppSpriteMediaGetSpritePropertyProcInfo = 0x00003FF0,
  182.         uppSpriteMediaHitTestAllSpritesProcInfo = 0x00003FF0,
  183.         uppSpriteMediaHitTestOneSpriteProcInfo = 0x0000FFF0,
  184.         uppSpriteMediaSpriteIndexToIDProcInfo = 0x00000EF0,
  185.         uppSpriteMediaSpriteIDToIndexProcInfo = 0x00000FF0,
  186.         uppSpriteMediaGetSpriteActionsForQTEventProcInfo = 0x0000FFF0,
  187.         uppSpriteMediaSetActionVariableProcInfo = 0x00000FF0,
  188.         uppSpriteMediaGetActionVariableProcInfo = 0x00000FF0,
  189.         uppSpriteMediaGetIndImagePropertyProcInfo = 0x00003EF0
  190.     };
  191.  
  192. #endif    /* SPRITEMEDIA_BASENAME */
  193.  
  194. /*
  195.     Example usage:
  196.  
  197.         #define MEDIA3D_BASENAME()    Fred
  198.         #define MEDIA3D_GLOBALS()    FredGlobalsHandle
  199.         #include <Movies.k.h>
  200.  
  201.     To specify that your component implementation does not use globals, do not #define MEDIA3D_GLOBALS
  202. */
  203. #ifdef MEDIA3D_BASENAME
  204.     #ifndef MEDIA3D_GLOBALS
  205.         #define MEDIA3D_GLOBALS() 
  206.         #define ADD_MEDIA3D_COMMA 
  207.     #else
  208.         #define ADD_MEDIA3D_COMMA ,
  209.     #endif
  210.     #define MEDIA3D_GLUE(a,b) a##b
  211.     #define MEDIA3D_STRCAT(a,b) MEDIA3D_GLUE(a,b)
  212.     #define ADD_MEDIA3D_BASENAME(name) MEDIA3D_STRCAT(MEDIA3D_BASENAME(),name)
  213.  
  214.     EXTERN_API( ComponentResult  ) ADD_MEDIA3D_BASENAME(GetNamedObjectList) (MEDIA3D_GLOBALS() ADD_MEDIA3D_COMMA QTAtomContainer * objectList);
  215.  
  216.     EXTERN_API( ComponentResult  ) ADD_MEDIA3D_BASENAME(GetRendererList) (MEDIA3D_GLOBALS() ADD_MEDIA3D_COMMA QTAtomContainer * rendererList);
  217.  
  218.  
  219.     /* MixedMode ProcInfo constants for component calls */
  220.     enum {
  221.         uppMedia3DGetNamedObjectListProcInfo = 0x000003F0,
  222.         uppMedia3DGetRendererListProcInfo = 0x000003F0
  223.     };
  224.  
  225. #endif    /* MEDIA3D_BASENAME */
  226.  
  227. /*
  228.     Example usage:
  229.  
  230.         #define MC_BASENAME()    Fred
  231.         #define MC_GLOBALS()    FredGlobalsHandle
  232.         #include <Movies.k.h>
  233.  
  234.     To specify that your component implementation does not use globals, do not #define MC_GLOBALS
  235. */
  236. #ifdef MC_BASENAME
  237.     #ifndef MC_GLOBALS
  238.         #define MC_GLOBALS() 
  239.         #define ADD_MC_COMMA 
  240.     #else
  241.         #define ADD_MC_COMMA ,
  242.     #endif
  243.     #define MC_GLUE(a,b) a##b
  244.     #define MC_STRCAT(a,b) MC_GLUE(a,b)
  245.     #define ADD_MC_BASENAME(name) MC_STRCAT(MC_BASENAME(),name)
  246.  
  247.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetMovie) (MC_GLOBALS() ADD_MC_COMMA Movie  theMovie, WindowPtr  movieWindow, Point  where);
  248.  
  249.     EXTERN_API( Movie  ) ADD_MC_BASENAME(GetIndMovie) (MC_GLOBALS() ADD_MC_COMMA short  index);
  250.  
  251.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(RemoveAllMovies) (MC_GLOBALS());
  252.  
  253.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(RemoveAMovie) (MC_GLOBALS() ADD_MC_COMMA Movie  m);
  254.  
  255.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(RemoveMovie) (MC_GLOBALS());
  256.  
  257.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(IsPlayerEvent) (MC_GLOBALS() ADD_MC_COMMA const EventRecord * e);
  258.  
  259.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetActionFilter) (MC_GLOBALS() ADD_MC_COMMA MCActionFilterUPP  blob);
  260.  
  261.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(DoAction) (MC_GLOBALS() ADD_MC_COMMA short  action, void * params);
  262.  
  263.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetControllerAttached) (MC_GLOBALS() ADD_MC_COMMA Boolean  attach);
  264.  
  265.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(IsControllerAttached) (MC_GLOBALS());
  266.  
  267.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetControllerPort) (MC_GLOBALS() ADD_MC_COMMA CGrafPtr  gp);
  268.  
  269.     EXTERN_API( CGrafPtr  ) ADD_MC_BASENAME(GetControllerPort) (MC_GLOBALS());
  270.  
  271.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetVisible) (MC_GLOBALS() ADD_MC_COMMA Boolean  visible);
  272.  
  273.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(GetVisible) (MC_GLOBALS());
  274.  
  275.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(GetControllerBoundsRect) (MC_GLOBALS() ADD_MC_COMMA Rect * bounds);
  276.  
  277.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetControllerBoundsRect) (MC_GLOBALS() ADD_MC_COMMA const Rect * bounds);
  278.  
  279.     EXTERN_API( RgnHandle  ) ADD_MC_BASENAME(GetControllerBoundsRgn) (MC_GLOBALS());
  280.  
  281.     EXTERN_API( RgnHandle  ) ADD_MC_BASENAME(GetWindowRgn) (MC_GLOBALS() ADD_MC_COMMA WindowPtr  w);
  282.  
  283.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(MovieChanged) (MC_GLOBALS() ADD_MC_COMMA Movie  m);
  284.  
  285.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetDuration) (MC_GLOBALS() ADD_MC_COMMA TimeValue  duration);
  286.  
  287.     EXTERN_API( TimeValue  ) ADD_MC_BASENAME(GetCurrentTime) (MC_GLOBALS() ADD_MC_COMMA TimeScale * scale);
  288.  
  289.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(NewAttachedController) (MC_GLOBALS() ADD_MC_COMMA Movie  theMovie, WindowPtr  w, Point  where);
  290.  
  291.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Draw) (MC_GLOBALS() ADD_MC_COMMA WindowPtr  w);
  292.  
  293.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Activate) (MC_GLOBALS() ADD_MC_COMMA WindowPtr  w, Boolean  activate);
  294.  
  295.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Idle) (MC_GLOBALS());
  296.  
  297.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Key) (MC_GLOBALS() ADD_MC_COMMA SInt8  key, long  modifiers);
  298.  
  299.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Click) (MC_GLOBALS() ADD_MC_COMMA WindowPtr  w, Point  where, long  when, long  modifiers);
  300.  
  301.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(EnableEditing) (MC_GLOBALS() ADD_MC_COMMA Boolean  enabled);
  302.  
  303.     EXTERN_API( long  ) ADD_MC_BASENAME(IsEditingEnabled) (MC_GLOBALS());
  304.  
  305.     EXTERN_API( Movie  ) ADD_MC_BASENAME(Copy) (MC_GLOBALS());
  306.  
  307.     EXTERN_API( Movie  ) ADD_MC_BASENAME(Cut) (MC_GLOBALS());
  308.  
  309.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Paste) (MC_GLOBALS() ADD_MC_COMMA Movie  srcMovie);
  310.  
  311.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Clear) (MC_GLOBALS());
  312.  
  313.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Undo) (MC_GLOBALS());
  314.  
  315.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(PositionController) (MC_GLOBALS() ADD_MC_COMMA const Rect * movieRect, const Rect * controllerRect, long  someFlags);
  316.  
  317.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(GetControllerInfo) (MC_GLOBALS() ADD_MC_COMMA long * someFlags);
  318.  
  319.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetClip) (MC_GLOBALS() ADD_MC_COMMA RgnHandle  theClip, RgnHandle  movieClip);
  320.  
  321.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(GetClip) (MC_GLOBALS() ADD_MC_COMMA RgnHandle * theClip, RgnHandle * movieClip);
  322.  
  323.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(DrawBadge) (MC_GLOBALS() ADD_MC_COMMA RgnHandle  movieRgn, RgnHandle * badgeRgn);
  324.  
  325.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetUpEditMenu) (MC_GLOBALS() ADD_MC_COMMA long  modifiers, MenuHandle  mh);
  326.  
  327.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(GetMenuString) (MC_GLOBALS() ADD_MC_COMMA long  modifiers, short  item, Str255  aString);
  328.  
  329.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(SetActionFilterWithRefCon) (MC_GLOBALS() ADD_MC_COMMA MCActionFilterWithRefConUPP  blob, long  refCon);
  330.  
  331.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(PtInController) (MC_GLOBALS() ADD_MC_COMMA Point  thePt, Boolean * inController);
  332.  
  333.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(Invalidate) (MC_GLOBALS() ADD_MC_COMMA WindowPtr  w, RgnHandle  invalidRgn);
  334.  
  335.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(AdjustCursor) (MC_GLOBALS() ADD_MC_COMMA WindowPtr  w, Point  where, long  modifiers);
  336.  
  337.     EXTERN_API( ComponentResult  ) ADD_MC_BASENAME(GetInterfaceElement) (MC_GLOBALS() ADD_MC_COMMA MCInterfaceElement  whichElement, void * element);
  338.  
  339.  
  340.     /* MixedMode ProcInfo constants for component calls */
  341.     enum {
  342.         uppMCSetMovieProcInfo = 0x00003FF0,
  343.         uppMCGetIndMovieProcInfo = 0x000002F0,
  344.         uppMCRemoveAllMoviesProcInfo = 0x000000F0,
  345.         uppMCRemoveAMovieProcInfo = 0x000003F0,
  346.         uppMCRemoveMovieProcInfo = 0x000000F0,
  347.         uppMCIsPlayerEventProcInfo = 0x000003F0,
  348.         uppMCSetActionFilterProcInfo = 0x000003F0,
  349.         uppMCDoActionProcInfo = 0x00000EF0,
  350.         uppMCSetControllerAttachedProcInfo = 0x000001F0,
  351.         uppMCIsControllerAttachedProcInfo = 0x000000F0,
  352.         uppMCSetControllerPortProcInfo = 0x000003F0,
  353.         uppMCGetControllerPortProcInfo = 0x000000F0,
  354.         uppMCSetVisibleProcInfo = 0x000001F0,
  355.         uppMCGetVisibleProcInfo = 0x000000F0,
  356.         uppMCGetControllerBoundsRectProcInfo = 0x000003F0,
  357.         uppMCSetControllerBoundsRectProcInfo = 0x000003F0,
  358.         uppMCGetControllerBoundsRgnProcInfo = 0x000000F0,
  359.         uppMCGetWindowRgnProcInfo = 0x000003F0,
  360.         uppMCMovieChangedProcInfo = 0x000003F0,
  361.         uppMCSetDurationProcInfo = 0x000003F0,
  362.         uppMCGetCurrentTimeProcInfo = 0x000003F0,
  363.         uppMCNewAttachedControllerProcInfo = 0x00003FF0,
  364.         uppMCDrawProcInfo = 0x000003F0,
  365.         uppMCActivateProcInfo = 0x000007F0,
  366.         uppMCIdleProcInfo = 0x000000F0,
  367.         uppMCKeyProcInfo = 0x00000DF0,
  368.         uppMCClickProcInfo = 0x0000FFF0,
  369.         uppMCEnableEditingProcInfo = 0x000001F0,
  370.         uppMCIsEditingEnabledProcInfo = 0x000000F0,
  371.         uppMCCopyProcInfo = 0x000000F0,
  372.         uppMCCutProcInfo = 0x000000F0,
  373.         uppMCPasteProcInfo = 0x000003F0,
  374.         uppMCClearProcInfo = 0x000000F0,
  375.         uppMCUndoProcInfo = 0x000000F0,
  376.         uppMCPositionControllerProcInfo = 0x00003FF0,
  377.         uppMCGetControllerInfoProcInfo = 0x000003F0,
  378.         uppMCSetClipProcInfo = 0x00000FF0,
  379.         uppMCGetClipProcInfo = 0x00000FF0,
  380.         uppMCDrawBadgeProcInfo = 0x00000FF0,
  381.         uppMCSetUpEditMenuProcInfo = 0x00000FF0,
  382.         uppMCGetMenuStringProcInfo = 0x00003BF0,
  383.         uppMCSetActionFilterWithRefConProcInfo = 0x00000FF0,
  384.         uppMCPtInControllerProcInfo = 0x00000FF0,
  385.         uppMCInvalidateProcInfo = 0x00000FF0,
  386.         uppMCAdjustCursorProcInfo = 0x00003FF0,
  387.         uppMCGetInterfaceElementProcInfo = 0x00000FF0
  388.     };
  389.  
  390. #endif    /* MC_BASENAME */
  391.  
  392. /*
  393.     Example usage:
  394.  
  395.         #define MUSICMEDIA_BASENAME()    Fred
  396.         #define MUSICMEDIA_GLOBALS()    FredGlobalsHandle
  397.         #include <Movies.k.h>
  398.  
  399.     To specify that your component implementation does not use globals, do not #define MUSICMEDIA_GLOBALS
  400. */
  401. #ifdef MUSICMEDIA_BASENAME
  402.     #ifndef MUSICMEDIA_GLOBALS
  403.         #define MUSICMEDIA_GLOBALS() 
  404.         #define ADD_MUSICMEDIA_COMMA 
  405.     #else
  406.         #define ADD_MUSICMEDIA_COMMA ,
  407.     #endif
  408.     #define MUSICMEDIA_GLUE(a,b) a##b
  409.     #define MUSICMEDIA_STRCAT(a,b) MUSICMEDIA_GLUE(a,b)
  410.     #define ADD_MUSICMEDIA_BASENAME(name) MUSICMEDIA_STRCAT(MUSICMEDIA_BASENAME(),name)
  411.  
  412.     EXTERN_API( ComponentResult  ) ADD_MUSICMEDIA_BASENAME(GetIndexedTunePlayer) (MUSICMEDIA_GLOBALS() ADD_MUSICMEDIA_COMMA long  sampleDescIndex, ComponentInstance * tp);
  413.  
  414. #endif    /* MUSICMEDIA_BASENAME */
  415.  
  416.  
  417. #endif /* __MOVIES_K__ */
  418.  
  419.